Field of the Invention
Embodiments of the present invention relate generally to computer science and, more specifically, to robustly blending surfaces via spherical parametrization.
Description of the Related Art
As part of developing models for physical objects, many users configure computer-aided design (CAD) modeling subsystems to blend different surfaces in the models. For example, blending operations can be used to soften sharp edges and corners of various objects. In another example, blending operations can be used to join separate objects together, where a smooth transition is created from a surface of one object to a surface of another object. Softening sharp edges included in a model often produces a model that is safer, stronger, more aesthetically pleasing, and/or easier to manufacturer than the original model. Further, smooth surfaces may be required for functional design reasons, such as minimizing the turbulence in pipe connections and manifolds, mitigating high-stress areas in mechanical junctions between beams with circular cross sections, to name a few.
To perform a blending operation when using a CAD modeling subsystem, the user typically selects multiple surfaces included in a model using a graphical user interface. The user then configures a blending engine to apply one or more blending algorithms to the multiple surfaces. The blending algorithms usually implemented in a blending engine are ones that enable acceptable blending results to be achieved across a variety of common blending scenarios. Widely implemented blending algorithms, for example, include edge-blend algorithms that replace sharp edges with smooth blending surfaces and vertex-blend algorithms that soften sharp corners where multiple edges meet at internal vertices.
One drawback to blending algorithms that are commonly implemented in CAD modeling subsystems is that such algorithms oftentimes limit the form and/or type of the surfaces that can be blended. Consequently, conventional, widely-implemented blending algorithms are usually unable to effectively blend arbitrary pipe surfaces, such as cylinders and cones. More complex, but less common, blending algorithms typically suffer from these same limitations or do not produce sufficiently smooth surfaces in the first place. For example, a blending algorithm that blends quadratic surfaces using Dupin cyclides is usually unable to blend arbitrary cones. In another example, a blending algorithm that blends canal surfaces based on a generalization of the media surface transform is usually unable to satisfy “curvature” G2 or higher continuity constraints that are required by many advanced users.
Other blending algorithms do exist that are capable of operating on a wider range of surfaces including arbitrary pipe surfaces. However, these blending algorithms are typically not compatible with CAD modeling subsystems. For example, implicit blending algorithms are able to operate on a wide range of surfaces, but the algorithms generate implicit surfaces in the Euclidean space 3. Implicit surfaces are defined as the set of zeros of a function of three variables, typically denoted as F(x,y,z)=0. By contrast, CAD modeling subsystems typically operate on parametric surfaces that are defined by parametric equations of two variables Ω∈2, typically denoted as (u,v)∈2. To integrate implicit blending algorithms into CAD modeling subsystems would require parametrization of implicit surfaces. As persons skilled in the art will recognize, techniques for performing parametrization of implicit surfaces are limited to special cases and are oftentimes unacceptably inefficient.
In sum, existing blending algorithms are usually unable to operate on arbitrary pipe surfaces, do not produce sufficiently smooth surfaces in the first place, and/or are incompatible with CAD modeling subsystems. As a result, users may be unable to configure CAD modeling subsystems to perform blending operations that produce models that meet functionality, aesthetic, and/or manufacturing requirements.
As the foregoing illustrates, what is needed in the art are more effective techniques for blending surfaces.